26d.イベント
イベントマクロ(シ−トをアクティブにしたり・セル選択等、特定の操作を行った時その
イベントによりマクロを実行)は、Excel97より強化された。
26d−1 Sheetイベント

上図は、プロジェクトエクスプロ−ラの"Sheet1"を指定し、クラスモジュ−ル
の(General)を"Worksheet"を選んだ場合の、利用できるイベントを示す。
'----------------------------------------------------------------
Private Sub Worksheet_Activate()
MsgBox "Sheet1ががアクティブになった"
End Sub
'----------------------------------------------------------------
Private Sub Worksheet_BeforeDoubleClick _
(ByVal Target As Excel.Range, Cancel As Boolean)
MsgBox "シ−ト上でダブルクリックされました"
End Sub
'----------------------------------------------------------------
Private Sub Worksheet_BeforeRightClick _
(ByVal Target As Excel.Range, Cancel As Boolean)
MsgBox "シ−ト上で右クリックされました"
End Sub
'----------------------------------------------------------------
Private Sub Worksheet_Calculate()
MsgBox "このシ−トのデ−タ再計算した"
End Sub
'----------------------------------------------------------------
Private Sub Worksheet_Deactivate()
MsgBox "Sheet1ががアクティブでなくなった"
End Sub
'----------------------------------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Target.Address = Cells(2, 2).Address Then
MsgBox Target.Address & "のセルが選ばれた"
End If
End Sub
' これはセル"B2"が選ばれると実行する
'----------------------------------------------------------------
'イベントの発生を止めたい時は下記(用済み後必ずTrueに戻すこと)
Application.EnableEvents = False
26d−2 Workbookイベント
左図はプロジェクトエクスプロ−ラ
の"This Workbook"を指定し
クラスモジュ−ルの(General)を
"Workbook"を選んだ場合の
利用できるイベントを示す。
26d−3 Chart(グラフシ−ト)イベント
左図はプロジェクトエクスプロ−ラ
の"Chart1"を指定し
クラスモジュ−ルの(General)を
"Chart"を選んだ場合の
利用できるイベントを示す。
26d−4 Applicationイベント
VBEを起動し
[挿入][クラスモジュ−ル]をクリック
してクラスモジュ−ルを挿入
下記コ−ドを記述し
Public WithEvents app As Application
[オブジェクト]ボックスから[app]を選択
[プロシ−ジャ]ボックスをクリック
で左図を表示
目次へ戻る